/**********************************************************************************************************************
 *  COPYRIGHT
 *  -------------------------------------------------------------------------------------------------------------------
 *
 *                This software is copyright protected and proprietary to Vector Informatik GmbH.
 *                Vector Informatik GmbH grants to you only those rights as set out in the license conditions.
 *                All other rights remain with Vector Informatik GmbH.
 *  -------------------------------------------------------------------------------------------------------------------
 *  FILE DESCRIPTION
 *  -------------------------------------------------------------------------------------------------------------------
 *          File:  Rte_SwcDiag.h
 *        Config:  GL_Demo.dpa
 *   ECU-Project:  XB_SUP_F
 *
 *     Generator:  MICROSAR RTE Generator Version 4.19.0
 *                 RTE Core Version 1.19.0
 *       License:  CBD1800257
 *
 *   Description:  Application header file for SW-C <SwcDiag>
 *********************************************************************************************************************/

/* double include prevention */
#ifndef _RTE_SWCDIAG_H
# define _RTE_SWCDIAG_H

# ifndef RTE_CORE
#  ifdef RTE_APPLICATION_HEADER_FILE
#   error Multiple application header files included.
#  endif
#  define RTE_APPLICATION_HEADER_FILE
#  ifndef RTE_PTR2ARRAYBASETYPE_PASSING
#   define RTE_PTR2ARRAYBASETYPE_PASSING
#  endif
# endif

# ifdef __cplusplus
extern "C"
{
# endif /* __cplusplus */

/* include files */

# include "Rte_SwcDiag_Type.h"
# include "Rte_DataHandleType.h"


# define SwcDiag_START_SEC_CODE
# include "SwcDiag_MemMap.h" /* PRQA S 5087 */ /* MD_MSR_19.1 */

/**********************************************************************************************************************
 * Runnable entities
 *********************************************************************************************************************/

# ifndef RTE_CORE
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Direction_of_rotation_ReadData CSDataServices_DID_0x10a_Direction_of_rotation_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Speed_FL_ReadData CSDataServices_DID_0x10a_Wheel_Speed_FL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Speed_FR_ReadData CSDataServices_DID_0x10a_Wheel_Speed_FR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Speed_RL_ReadData CSDataServices_DID_0x10a_Wheel_Speed_RL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Speed_RR_ReadData CSDataServices_DID_0x10a_Wheel_Speed_RR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Voltage_FL_ReadData CSDataServices_DID_0x10a_Wheel_Voltage_FL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Voltage_FR_ReadData CSDataServices_DID_0x10a_Wheel_Voltage_FR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Voltage_RL_ReadData CSDataServices_DID_0x10a_Wheel_Voltage_RL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10a_Wheel_Voltage_RR_ReadData CSDataServices_DID_0x10a_Wheel_Voltage_RR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Status_FL_ReadData CSDataServices_DID_0x10d_Valve_Status_FL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Status_FR_ReadData CSDataServices_DID_0x10d_Valve_Status_FR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Status_RL_ReadData CSDataServices_DID_0x10d_Valve_Status_RL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Status_RR_ReadData CSDataServices_DID_0x10d_Valve_Status_RR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Voltage_FL_ReadData CSDataServices_DID_0x10d_Valve_Voltage_FL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Voltage_FR_ReadData CSDataServices_DID_0x10d_Valve_Voltage_FR_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Voltage_RL_ReadData CSDataServices_DID_0x10d_Valve_Voltage_RL_ReadData
#  define RTE_RUNNABLE_CSDataServices_DID_0x10d_Valve_Voltage_RR_ReadData CSDataServices_DID_0x10d_Valve_Voltage_RR_ReadData
#  define RTE_RUNNABLE_CallbackGetFaultDetectCounter_GetFaultDetectionCounter CallbackGetFaultDetectCounter_GetFaultDetectionCounter
#  define RTE_RUNNABLE_diag_Runnable_10ms diag_Runnable_10ms
#  define RTE_RUNNABLE_diag_Runnable_20ms diag_Runnable_20ms
# endif

# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Direction_of_rotation_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Direction_of_rotation_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_FL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_FL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_FR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_FR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_RL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_RL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_RR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Speed_RR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_FL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_FL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_FR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_FR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_RL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_RL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_RR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10a_Wheel_Voltage_RR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_FL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_FL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_FR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_FR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_RL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_RL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_RR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Status_RR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_FL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_FL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_FR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_FR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_RL_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_RL_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
# ifdef RTE_PTR2ARRAYBASETYPE_PASSING
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_RR_ReadData(P2VAR(uint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# else
FUNC(Std_ReturnType, SwcDiag_CODE) CSDataServices_DID_0x10d_Valve_Voltage_RR_ReadData(P2VAR(DataArrayType_uint8_1, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) Data); /* PRQA S 0850 */ /* MD_MSR_19.8 */
# endif
FUNC(Std_ReturnType, SwcDiag_CODE) CallbackGetFaultDetectCounter_GetFaultDetectionCounter(P2VAR(sint8, AUTOMATIC, RTE_SWCDIAG_APPL_VAR) FaultDetectionCounter); /* PRQA S 0850 */ /* MD_MSR_19.8 */
FUNC(void, SwcDiag_CODE) diag_Runnable_10ms(void); /* PRQA S 0850, 3451 */ /* MD_MSR_19.8, MD_Rte_3451 */
FUNC(void, SwcDiag_CODE) diag_Runnable_20ms(void); /* PRQA S 0850, 3451 */ /* MD_MSR_19.8, MD_Rte_3451 */

# define SwcDiag_STOP_SEC_CODE
# include "SwcDiag_MemMap.h" /* PRQA S 5087 */ /* MD_MSR_19.1 */


# ifndef RTE_CORE
/**********************************************************************************************************************
 * Application errors
 *********************************************************************************************************************/

#  define RTE_E_CSDataServices_DID_0x10a_Direction_of_rotation_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Speed_FL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Speed_FR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Speed_RL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Speed_RR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Voltage_FL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Voltage_FR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Voltage_RL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10a_Wheel_Voltage_RR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Status_FL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Status_FR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Status_RL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Status_RR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Voltage_FL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Voltage_FR_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Voltage_RL_E_NOT_OK (1U)

#  define RTE_E_CSDataServices_DID_0x10d_Valve_Voltage_RR_E_NOT_OK (1U)

#  define RTE_E_CallbackGetFaultDetectCounter_E_NOT_OK (1U)
# endif /* !defined(RTE_CORE) */

# ifdef __cplusplus
} /* extern "C" */
# endif /* __cplusplus */

#endif /* _RTE_SWCDIAG_H */

/**********************************************************************************************************************
 MISRA 2004 violations and justifications
 *********************************************************************************************************************/

/* module specific MISRA deviations:
   MD_Rte_3451:  MISRA rule: 8.8
     Reason:     Schedulable entities are declared by the RTE and also by the BSW modules.
     Risk:       No functional risk.
     Prevention: Not required.

*/
